home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
archiver
/
pax2exe.zip
/
README
< prev
next >
Wrap
Text File
|
1990-02-26
|
10KB
|
236 lines
PAX - Portable Archive Interchange
Copyright (C) 1989 Mark H. Colburn
All Rights Reserved.
Introduction
This is version 2.0 of Pax, an archiving utility.
Pax is an archiving utility that reads and writes tar and cpio formats,
both the traditional ones and the extended formats specified in IEEE
1003.1. It handles multi-volume archives and automatically determines
the format of an archive while reading it. Three user interfaces are
supported: tar, cpio, and pax. The pax interface was designed by IEEE
1003.2 as a compromise in the chronic controversy over which of tar or
cpio is best.
The Pax utility is being distributed free of charge and may be
redistributed by others in either source or binary form. (See the
liscensing section for restrictions)
The source for Pax has been posted to comp.sources.unix on USENET and
will also be available by anonymous FTP on the Internet from uunet.uu.net,
moon.src.honeywell.com and from ucb-arpa.berkeley.edu. The source
to Pax is also available via anonymous UUCP from minnetech.mn.org, the
author's home machine and possibly other sites.
The source for Pax will continue to change as long as the definition of
the utility is modified by the 1003.2 working group. (For example,
there are a number of changes in Draft 8 which will be incorporated as
soon as Draft 8 is available). Additional modifications will be made
based on user input, such as request for support of additional archive
formats, etc. Patches and new releases will be made as new functionality
is added or problems are diagnosed and fixed.
Installation
In order to install Pax, you must run the Configure script.
In addition, if your systems does not have at least a somewhat POSIX
compliant <limits.h>, then you may have to tweak some of the values in
limits.h.
Portability
Pax is intended to run on as many systems as possible. If you have
problems getting Pax to compile or run on your system, please let me
know so that the source or the installation procedure can be modified.
Pax has been tested and appears to run correctly on the following
machines:
Machine Operating System/Release
---------------------------------------------------
Altos 586 System III (2.3)
AT&T UNIX PC System V.2 (Release 3.51)
Convergent S/320 CTIX/68k 6.1, UNIX SysV 3.1
Convergent S/80 CTIX/68k 6.1, UNIX SysV 3.1
Cray 2 UNICOS
Encore CC 02.00.r088
HP 9000 HP/UX 6.0.1
IBM PC/AT Microport SV/AT V2.4
Mac II A/UX 1.0
NCR Tower System V.2
Pyramid AT&T and Berkeley universe
Sequent Symetry Dynix 3.0
SGI Iris 4D/60G UNIX 3.0
SGI Iris 4D/70G UNIX 3.0
SCO Xenix 386 2.3.2
SCO Unix 386 3.2
Sun 2 SunOS 3.4
Sun 2 SunOS 3.5
Sun 3 SunOS 3.4
Sun 3 SunOS 3.5
Sun 3 SunOS 4.0
Sun 4 SunOS 4.0
VAX 8750 BSD 4.3 (Mt. Xinu)
VAX 8650 BSD 4.3 (Mt. Xinu)
VAX 780 BSD 4.3 (Berkeley)
---------------------------------------------------
In future releases, the source will be moving toward ANSI C and POSIX
compatibility. This should allow for portability over any system
supporting both ANSI and POSIX. In addition, POSIX/ANSI portability
library routines will be developed which will allow the code to run on
the standard machines available now.
DOS stuff:
It has been tested only with the Microsoft C V5.1 compiler and
MASM V5.1. It supports both the DOS filesystem and the raw
"tape on a disk" system used by micro UN*X systems. For more
details, see below. This will allow for easy transfer of files
to and from UN*X systems. Multiple volumes and the tar append
option are supported.
To get PAX.EXE and CPIO.EXE just copy TAR.EXE to PAX.EXE and
CPIO.EXE. Since MSDOS 2.X does not report the file name to the
program, those users (and anyone else that wants to) can set the
environment variable PAXNAM to the program name that they want
(ie. set PAXNAM=tar). Note that both tar and cpio archives can
be accessed through the pax interface.
This program does not do ANY translation on data files. File and
directory names have their backslashes changed to forward slashes and
uppercase changed to lowercase when writing an archive on an MSDOS
machine. File and directory names are truncated to an 8 character name
and a 3 character extension on extraction from an archive along with
translation of '.' to '_' where appropriate and translation to
monocase.
Unix style shell regular expressions are now supported on the command
line. To prevent expansion enclose the argument in single quotes
(backslashes don't work, they are simply translated into forward
slashes). If a *.* is encountered, the program warns the user that to
get all the files he needs to use a * instead and proceeds to archive
filenames with a period in them. A trailing slash on a filename
matches a directory. Arguments with spaces in them need to be
enclosed in double quotes (ie. "'with space'").
True dos character device support (eg. a tape drive with a
character device driver, inspired by John B. Theil) has been
added, but is only available when the archive filename is
supplied on the command line (not stdin-stdout).
To use the raw "tape on a disk" feature give an archive filename
of "a:dio" or "b:dio" (dio stands for direct I/O) for floppy
drives "a" and "b". This program will support any media
supported by DOS, but you MUST do a DIR on an MSDOS formatted
disk at the density you want to use before using PAX, TAR, or
CPIO with direct I/O. Note that the direct I/O destroys the
logical structure of the disk.
Floppy disk type specification is now supported on the
command line for the raw disk interface. This gets rid of
having to do the disk exchange, although the disk exchange
method still works. The following floppy disk types are
supported under pax, tar, and cpio.
Abbreviation Type
ld DSDD 360k 5 1/4 inch
hd DSHD 1.2M 5 1/4 inch
l3 DSSD 720k 3 1/2 inch
h3 DSDD 1.44M 3 1/2 inch
The abbreviation is tacked onto the end of [ab]:dio?? like
a:diold or b:diohd. Examples are given below.
The default blocking factor for tar has been changed to 20.
Examples:
Using direct i/o on a floppy with tar.exe and a high density
formatted 5 1/4 inch floppy disk (a:diohd and b:diohd are special)
1) Put the formatted high density floppy in drive "a"
2) tar cvf a:diohd .
Using direct i/o on a floppy with tar.exe (a:dio and b:dio are special)
1) Put high or low density MSDOS formatted floppy in drive "a".
2) Do a DIR (this is a required step)
3) Remove the floppy
4) Put a floppy in drive "a" with the same density as step 1
5) tar cvf a:dio .
Using direct i/o on a floppy with cpio.exe (a:dio and b:dio are special)
1) Put high or low density MSDOS formatted floppy in drive "a".
2) Do a DIR (this is a required step)
3) Remove the floppy
4) Put a floppy in drive "a" with the same density as step 1
5) find . -print | cpio -ocvBD a:dio
(note the undocumented D option to specify the
archive, works on reads too)
Using direct i/o on a floppy with pax.exe and the tar archive format
(a:dio and b:dio are special)
1) Put high or low density MSDOS formatted floppy in drive "a".
2) Do a DIR (this is a required step)
3) Remove the floppy
4) Put a floppy in drive "a" with the same density as step 1
5) pax -w -b 20b -f a:dio .
Using tar.exe within the MSDOS filesystem (the filename does not matter)
Will not des